1. Field of the Invention
The present invention relates to an image processing apparatus, image processing method, computer program, and storage medium. The present invention relates more specifically to the image processing apparatus, image processing method, computer program, and storage medium, which can save memory and suppress an image processing load while maintaining detailed information of a high resolution image.
2. Description of Related Art
An image printing apparatus generates a multiple value bitmap image which is rasterized in the apparatus. Usually this bitmap image is generated according to a resolution (600 dpi, 1200 dpi, or the like) of an output apparatus (image printing apparatus).
In fine characters or line drawings, however, there is observed an irregular line (called “jaggy”) at an inclined edge portion when a resolution is around 600 dpi, and this is considered to be a cause of image quality degradation.
The most apparent method to improve the jaggy is to increase the resolution from 600 dpi to a higher resolution of 1200 dpi or the like. A problem of this method is that the number of pixels to be processed becomes enormous (4 times larger than in the case of 600 dpi) and a longer processing time or an additional processing resource becomes necessary.
For this problem, there has been proposed a technique to retain high resolution data adaptively and locally. In Japanese Patent Laid-Open No. 2004-320361, the jaggies at edge portions are improved and high speed processing is performed by retaining the edge portions of an object to be drawn in a higher resolution when a vector image thereof is rasterized.
There have been some other proposals to improve the jaggy at low cost. Representative techniques thereof include an anti-aliasing processing. This is a kind of processing performed in rasterizing vector data and details thereof are shown in FIGS. 1A to 1E.
A pixel (FIG. 1A) is divided into fine sub-pixels (nine sub-pixels in FIG. 1B), and vector data is superimposed on the sub-pixels (FIG. 1C). An output pixel value of each of the sub-pixels is determined to be “1” when the vector data overlaps more than a half of the pixel (a region of a drawing occupies more than a half of a sub-pixel area) and otherwise determined to be “0” (FIG. 1D). In this case, apparently from FIG. 1D, there are four sub-pixels of “1” in the nine sub-pixels and the output pixel value becomes “4/9” (FIG. 1E).
Many improvement techniques are proposed for the anti-aliasing processing as described above.
In Japanese Patent Laid-Open No. 9-18710, an identifier is provided to a pixel for indicating whether the pixel is rasterized from vector data at the same time when the anti-aliasing processing is performed and also the direction of an edge thereof is stored. Also, the number of bits in obtained halftone data is reduced and the edge direction information is added thereto, thereby reducing a storage area. Here, in the nine sub-pixels, a bitmap pattern and an edge direction are preliminarily associated with each other for each sub-pixel state (sub-pixel is “1” or “0”). With reference to the relationship associated in this manner, the edge direction is determined from the relationship obtained in FIG. 1D. In FIGS. 1A to 1E, the edge direction is “downward”.
In the Japanese Patent Laid-Open No. 2004-320361, however, one pixel value has multiple sets of color information, and therefore the method is effective only in a specific color and provides restrictions to other image processing systems like color processing. Also the method is effective only in rendering vector information but can not process raster images.
Also, in the Japanese Patent Laid-Open No. 9-18710, the direction information of an edge portion needs to be acquired from the vector information and can not be acquired from the raster image. Further, the method has a potential problem of image blurring in an image having complicated edges.
As described above, the increase of resolution is effective to improve the jaggy or the like, but invites an increase of the processing time or the processing resource along with this increase of resolution. Accordingly, even when the resolution is increased for the improvement of the jaggy or the like, it is desirable to suppress the increase of the processing time or the processing resource.